Distributed automatic level control for a microphone array

ABSTRACT

A distributed automatic level control function is provided, in which information relating to a common automatic level control parameter is transmitted to each of a plurality of microphone devices, wherein the information transmitted to at least one microphone device is derived from an audio sample of at least one different microphone device. Each microphone device produces the common automatic level control parameter based on the information received by the microphone device and applies the common automatic level control parameter produced by the microphone device to a distributed automatic level controller of the microphone device.

CROSS-REFERENCE TO RELATED APPLICATION(S)

This application is a continuation-in-part of U.S. Pat. No. 8,731,002,entitled “Synchronization, Re-Synchronization, Addressing, andSerialized Signal Processing for Daisy-Chained Communication Devices”,issued on May 20, 2014 to Pan et al., which claims priority to U.S.Provisional Application No. 61/467,538, entitled “Synchronization,Re-Synchronization, Addressing, and Serialized Signal Processing forDaisy-Chained Communication Devices”, filed on Mar. 25, 2011, by Pan etal., commonly-owned at the time of the filing of the instant applicationand incorporated herein by reference as though set forth in full.

The subject matter of this patent application may be related to thesubject matter of commonly-owned U.S. patent application Ser. No.13/790,071 entitled ADVANCED TDM DAISY-CHAIN COMMUNICATION SYSTEMS ANDDEVICES filed on Mar. 8, 2013, even date herewith.

The subject matter of this patent application also may be related to thesubject matter of commonly-owned U.S. patent application Ser. No.13/426,918 entitled SYNCHRONIZATION, RE-SYNCHRONIZATION, ADDRESSING, ANDSERIALIZED SIGNAL PROCESSING FOR DAISY-CHAINED COMMUNICATION DEVICESfiled Mar. 22, 2012 , which claims the benefit of U.S. ProvisionalPatent Application No. 61/467,538 filed Mar. 25, 2011.

The subject matter of this patent application also may be related to thesubject matter of commonly-owned U.S. patent application Ser. No.13/071,836 entitled SYSTEM, APPARATUS, AND METHOD FOR TIME-DIVISIONMULTIPLEXED COMMUNICATION filed on Mar. 25, 2011.

The subject matter of this patent application also may be related to thesubject matter of commonly-owned U.S. patent application Ser. No.13/646,397 entitled TWO-WIRE COMMUNICATION SYSTEM FOR HIGH-SPEED DATAAND POWER DISTRIBUTION filed on Oct. 5, 2012 , which claims the benefitof U.S. Provisional Patent Application No. 61/543,379.

The subject matter of this patent application also may be related to thesubject matter of commonly-owned U.S. patent application Ser. No.13/646,382 entitled METHODS FOR DISCOVERY, CONFIGURATION, ANDCOORDINATING DATA COMMUNICATIONS BETWEEN MASTER AND SLAVE DEVICES IN ACOMMUNICATION SYSTEM filed on Oct. 5, 2012 , which claims the benefit ofU.S. Provisional Patent Application No. 61/543,380.

Each of these patent applications is hereby incorporated herein byreference in its entirety.

FIELD OF THE INVENTION

The present invention relates generally to microphone arrays systemsand, more particularly, to distributed automatic level control (ALC)processing in microphone array systems such as MEMS microphone arrays.

BACKGROUND OF THE INVENTION

Many audio systems implement automatic level control (ALC) todynamically adjust the signal level of an input signal, such as from amicrophone. Generally speaking, ALC involves increasing the signal level(gain) of the input signal when the input signal level is below apredetermined minimum level and reducing the signal level (gain) of theinput signal when the input signal level is above a predeterminedmaximum level, for example, using a programmable gain amplifier (PGA).Specifically, when the input signal level becomes smaller than apredetermined target level, the ALC will ramp up the gain of the PGAafter some hold time. The gain change rate is referred to as the decaytime. When the input signal level becomes above the target level, theALC will reduce the gain of the PGA at a rate referred to as the attacktime.

FIG. 1 is a schematic diagram providing an example of ALC operation,specifically showing a representation of an input signal 110, arepresentation of the PGA gain curve 120 performed by the ALC, and arepresentation of the output signal 130 resulting from ALC. In thisexample, the input signal 110 has a first portion 111 in which thesignal level is within the target level, a second portion 112 in whichthe signal level is smaller than the target level, and a third portion113 in which the signal level is above the target level. During thefirst portion 111 of the input signal 110, the ALC performs no PGA gainchange, such that the signal level of a corresponding portion 131 of theoutput signal 130 is unchanged from the first portion 111 of the inputsignal 110. During the second portion 112 of the input signal 110, theinput signal level becomes smaller than the target level. After apredetermined hold time 132, since the input signal level is stillsmaller than the target level, the ALC increases the gain of the PGAover a predetermined decay time 133 so that the output signal levelreaches the target level and remains at the target level through timeperiod 134, representing the remainder of the second portion 112 of theinput signal 110. During the third portion 113 of the input signal, theinput signal level becomes above the target level. The ALC decreases thegain of the PGA over a predetermined attach time 135 so that the outputsignal level reaches the target level and remains at the target levelfor time period 136.

The ALC sometimes provides a noise gate mode to deal with the situationin which there is little or no input signal level (e.g., when nobody isspeaking into the microphone or the microphone is muted). When thesignal is very quiet and consists mainly of noise, the ALC function maycause a phenomenon often referred to as “noise pumping.” The noise gatemode prevents noise pumping by comparing the signal level at the inputagainst a noise gate threshold and controlling the gain of the PGA orother output control accordingly, such as, for example, setting the gainto zero, muting the output signal, or keeping the gain the same as itwas before the signal was recognized as noise.

FIG. 2 is a schematic diagram providing an example of a noise gate mode,specifically showing a representation of an input signal 210, and arepresentation of the PGA gain curve 230, and a representation of theoutput signal 220 resulting from the ALC with noise gate mode. In thisexample, the input signal 210 has a first portion 211 in which thesignal level is above the noise gate threshold, a second portion 212 inwhich the signal level is below than the noise gate threshold, and athird portion 213 in which the signal level is above the noise gatethreshold. During the first portion 211 of the input signal 210, the ALCincreases the gain of the PGA 230 so as to increase the output signallevel 220 into the target level. During the second portion 212 of theinput signal 210, the ALC holds the gain level of the PGA 230 so thatthe noise is not amplified in the output signal 220. During the thirdportion 213, the ALC increases the gain of the PGA 230 so that theoutput signal level 220 is at the target level.

Thus, the ALC can boost low level signals to make them heard moreclearly, limit high level signals at a fixed level to avoid outputclipping, and eliminate noisy signals from the output or keep noisysignals at a very low level in the output. ALC is usually integratedinto post processing chips that process raw microphone data from themicrophone(s).

In microphone array systems such as MEMS microphone arrays, some amountof signal processing often is incorporated into each of a plurality ofmicrophone devices for local processing the microphone input signal bythe microphone device. As described in U.S. patent application Ser. No.13/426,918, data may be passed from one microphone device to anothermicrophone device in a daisy-chain configuration to allow for serializedsignal processing, such as for beamforming, noisereduction/cancellation, or acoustic source localization, to name but afew.

SUMMARY OF EXEMPLARY EMBODIMENTS

In one embodiment there is provided a method for distributed automaticlevel control processing in a system having a plurality of microphonedevices, each microphone device having a distributed automatic levelcontroller and producing a succession of audio samples. The methodinvolves transmitting, to each microphone device, information relatingto a common automatic level control parameter, wherein the informationtransmitted to at least one microphone device is derived from an audiosample of at least one different microphone device; producing, by eachmicrophone device, the common automatic level control parameter based onthe information received by the microphone device; and applying, by eachmicrophone device, the common automatic level control parameter producedby the microphone device to the distributed automatic level controllerof the microphone device.

In another embodiment there is provided a system for distributedautomatic level control processing. The system includes a plurality ofmicrophone devices, each microphone device having a communicationinterface and a distributed automatic level controller and producing asuccession of audio samples, wherein the distributed automatic levelcontroller of each microphone device is configured to receive via thecommunication interface information relating to a common automatic levelcontrol parameter derived from an audio sample of at least one differentmicrophone device, produce the common automatic level control parameterbased on the received information, and apply the common automatic levelcontrol parameter for an automatic level control function of the device.

In various alternative embodiments, transmitting information relating tothe common automatic level control parameter may involve, in a firstphase, transmitting an initial value by an initial device to a nextsuccessive device and transmit, by each successive device, an updatedvalue based on a value received from a predecessor device; and, in asecond phase, transmitting the common automatic level control parameterby the initial device to the next successive device and transmitting thecommon automatic level control value by each successive device.Producing the common automatic level control parameter based on theinformation received by the microphone device may involve producing thecommon automatic level control parameter based on the informationreceived by the microphone device and at least one audio sample of themicrophone device. The succession of audio samples may be logicallydivided into a number of successive frames, wherein all of saidmicrophone devices may apply the common automatic level controlparameter to a respective audio sample associated with a common frame.The common automatic level control parameter may be derived from audiosamples associated with the common frame and/or a frame earlier than thecommon frame. The microphone devices may be configured in a daisy-chainconfiguration, wherein at least one microphone device may transmitinformation relating to the common automatic level control parameter toa next successive microphone device in the daisy-chain configuration.The common automatic level control parameter may comprise a valuecomputed from at least one audio sample from each microphone device. Thecommon automatic level control parameter produced by the microphonedevice may be used as a reference value in the automatic levelcontroller, may be used to program a programmable gain amplifier basedon the common automatic level control parameter, and/or may be used toprocess audio sample data of the microphone device based on the commonautomatic level control parameter to produce processed audio sample datafor transmission over a communication system. Information relating tothe common automatic level control parameter may be transmitted to amaster/host device, which may be configured to process data from themicrophone devices based on the common automatic level controlparameter.

In another embodiment there is provided a microphone device including amicrophone for producing a succession of audio samples, a communicationinterface, and a distributed automatic level controller, wherein thedistributed automatic level controller is configured to receive via thecommunication interface information relating to a common automatic levelcontrol parameter derived from an audio sample of at least one differentmicrophone device, produce the common automatic level control parameterbased on the received information, and apply the common automatic levelcontrol parameter to the distributed automatic level controller.

In various alternative embodiments, the device may produce the commonautomatic level control parameter based on the information received bythe device and at least one audio sample of the microphone device. Thesuccession of audio samples may be logically divided into a number ofsuccessive frames, the common automatic level control parameter may bederived from information associated with a first given frame, and thecommon automatic level control parameter is applied to one of the firstgiven frame or another frame. The common automatic level controlparameter produced by the microphone device may be used as a referencevalue in the automatic level controller, may be used to program aprogrammable gain amplifier based on the common automatic level controlparameter, and/or may be used to process audio sample data of themicrophone device based on the common automatic level control parameterto produce processed audio sample data for transmission over acommunication system.

Additional embodiments may be disclosed and claimed.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and advantages of the invention will be appreciated morefully from the following further description thereof with reference tothe accompanying drawings wherein:

FIG. 1 is a schematic diagram providing an example of ALC operation,specifically showing a representation of an input signal 110, arepresentation of the PGA gain curve 120 performed by the ALC, and arepresentation of the output signal 130 resulting from ALC;

FIG. 2 is a schematic diagram providing an example of a noise gate mode,specifically showing a representation of an input signal 210, and arepresentation of the PGA gain curve 230, and a representation of theoutput signal 220 resulting from the ALC with noise gate mode;

FIG. 3 is a schematic block diagram showing one example of a microphonearray in which each microphone sends raw microphone data to a masterdevice, as known in the art;

FIG. 4 is a schematic block diagram showing one example of a microphonearray in which each microphone performs its own ALC function and sendsprocessed data to the master device, as known in the art;

FIG. 5 is a schematic block diagram showing one example of afeed-forward ALC logic arrangement for the processor or circuit, asknown in the art;

FIG. 6 is a logic flow diagram for distributed automatic level controloperation, in accordance with one exemplary embodiment of the presentinvention;

FIG. 7 is a schematic diagram depicting a sequence for exchanginginformation allowing the microphone devices to produce the commonautomatic level control parameter, in accordance with one exemplaryembodiment.

FIG. 8 is a simplified logic flow diagram for a two-stage process fordetermining and distributing a common automatic level control parameterbased on exchange of raw audio data samples, in accordance with oneexemplary embodiment;

FIG. 9 is a simplified logic flow diagram for a two-stage process fordetermining and distributing a common automatic level control parameterbased on exchange of peak or RMS values, in accordance with oneexemplary embodiment;

FIG. 10 is a schematic block diagram showing an automatic levelcontroller circuit that may be used in each microphone device in certainexemplary embodiments;

FIGS. 11-13 are schematic block diagrams showing various time-divisionmultiplex (TDM) daisy-chain configurations in which distributedautomatic level control may be used;

FIG. 14 is a schematic diagram of a two-wire bi-directionalpoint-to-point bus configuration;

FIG. 15 is a schematic diagram depicting a frame-based sequence forexchanging information allowing the microphone devices to produce thecommon automatic level control parameter, in accordance with oneexemplary embodiment;

FIG. 16 is a simplified logic flow diagram for a recursive process fordetermining and distributing a common automatic level control parameter,in accordance with one exemplary embodiment;

FIG. 17 is a schematic timing diagram for determining and distributingcommon automatic level control parameters for frames that may be usedfor microphone devices in a daisy-chain configuration of the type shownin FIG. 12, in accordance with but one exemplary embodiment;

FIGS. 18 and 19 are schematic block diagrams showing relevant logicblocks of microphone devices providing one possible implementation forthe timing diagram of FIG. 17;

FIG. 20 is a schematic timing diagram for determining and distributingcommon automatic level control parameters for frames that may be usedfor microphone devices in a daisy-chain configuration of the type shownin FIG. 12, in accordance with another exemplary embodiment.

It should be noted that the foregoing figures and the elements depictedtherein are not necessarily drawn to consistent scale or to any scale.Unless the context otherwise suggests, like elements are indicated bylike numerals.

DETAILED DESCRIPTION OF SPECIFIC EMBODIMENTS

In embodiments of the present invention, automatic level control (ALC)is performed in a distributed manner by a plurality of microphonedevices in a microphone array, where each microphone device performs anALC function based on a common automatic level control parameterproduced by each microphone device based on aggregated data from theplurality of microphone devices. For example, the aggregated data mayinclude raw microphone data from all of the microphone devices, amaximum or minimum peak or RMS value calculated the microphone devices,an average signal level value, a gain value, or other automatic levelcontrol parameter.

In certain prior art systems, each microphone device sends rawmicrophone data to a master device, which processes the raw data toperform ALC on the microphone data samples. FIG. 3 is a schematic blockdiagram showing one example of a microphone array in which eachmicrophone sends raw microphone data to a master device, as known in theart. Specifically, each microphone device 302 ₁-302 _(N) sends rawmicrophone data via communication bus 306 to master device 304, whichincludes a digital signal processor or other circuit configured toperform ALC on the raw data samples received from the microphonedevices.

In certain other prior art systems, each microphone device independentlyperforms its own ALC function and sends processed data to the masterdevice. FIG. 4 is a schematic block diagram showing one example of amicrophone array in which each microphone performs its own ALC functionand sends processed data to the master device, as known in the art.Specifically, each microphone device 402 ₁-402 _(N) includes a digitalsignal processor or other circuit 403 configured to perform ALC on theraw data samples generated a local microphone (not shown forconvenience) and sends processed microphone data via communication bus406 to master device 404, which may then further process the (processed)data samples received from the microphone devices.

FIG. 5 is a schematic block diagram showing one example of afeed-forward ALC logic arrangement for the processor or circuit 403, asknown in the art. Here, the microphone data (ALC input) 502 is processed504 to estimate a characteristic such as the peak or RMS value of theinput signal, and the gain is adjusted 506 based on that information.The ALC input 502 and the adjusted gain 506 are combined 508 to produceALC output 510, which then may be transmitted by a bus interface 512 viacommunication bus 406 to the master device.

One issue with the independent ALC function of the type described withreference to FIGS. 4 and 5 is that each microphone device may have adifferent amount of gain added to its signal and all of the microphonesignals may be normalized to the target level, which may be problematicfor certain types of post-processing in which differences in the signallevels may be utilized, such as for voice orientation/localization,noise cancellation, or other types of post-processing.

Distributed Automatic Level Control

FIG. 6 is a logic flow diagram for distributed automatic level controloperation, in accordance with one exemplary embodiment of the presentinvention. In this exemplary embodiment, information relating to acommon automatic level control parameter is transmitted to eachmicrophone device (and optionally also the master/host device), whereinthe information transmitted to at least one microphone device is derivedfrom an audio sample of at least one different microphone device (block602). Typically, each microphone device transmits information to anadjacent microphone device, such as when the microphone devices arearranged in a daisy-chain or ring configuration. In any case, eachmicrophone device (and optionally the master/host device) thenindependently produces the common automatic level control parameterbased on the received information (block 604) and applies the commonautomatic level control parameter to the automatic level controller ofthe microphone device (block 606) (or, in the case of the master/hostdevice, processes data received from the microphone devices based on thecommon automatic level parameter). It should be noted that, in certainembodiments, “producing” the common automatic level control parameter bycertain devices may not involve any computation, such as, for example,when the parameter to be used by each device's distributed automaticlevel controller is computed by one device and distributed to the otherdevices. In other embodiments, however, each device may need to computethe common automatic level control parameter based on receivedinformation and optionally based on other information, such aslocally-generated audio sample data.

The common automatic level control parameter may be used by eachmicrophone device for any of a variety of automatic level controlfunctions, such as using the common automatic level control parameter asa reference value in the automatic level controller, programming aprogrammable gain amplifier based on the common automatic level controlparameter, and/or processing audio sample data of the microphone devicebased on the common automatic level control parameter to produceprocessed audio sample data and transmitting the processed audio sampledata over a communication system. For example, the common automaticlevel control parameter may be a maximum or minimum peak or RMS valueacross all of the microphone devices for a set of related audio samples(e.g., audio samples taken by the microphone devices in a given samplingframe, where the audio sampling may be synchronized). The commonautomatic level control parameter may be used, for example, to set acommon amount of gain across all microphone devices (optionally subjectto a predetermined maximum or minimum amount of gain or resulting signallevel), to normalize all audio samples to a common gain level (e.g., thecommon automatic level control parameter may be used as a commonreference value for setting gain by each microphone device), to providea common noise gate threshold for all of the microphone devices (e.g.,for selectively muting microphones that are below a minimum valuedetermined across all microphone devices), or for other automatic levelcontrol operation.

In one exemplary embodiment depicted schematically in FIG. 7, in orderfor each microphone device to produce the common automatic level controlparameter, an initial microphone device 702 (which may or may not be thefirst microphone device in a daisy-chain of devices) transmits initialinformation 704 based on an audio sample of the microphone device to anext successive microphone device 706, and each successive microphonedevice receives information from the predecessor microphone device andtransmits updated information (e.g., updated information 708 transmittedby microphone device 706) based on the received information and its ownaudio sample data to the next successive device (where the updatedinformation may be the same as the received information or may bedifferent than the received information depending on any of a variety offactors). When the initial microphone device receives updatedinformation 712 from the last microphone device 710, it then can producea common automatic level control parameter and distribute it to theother microphone devices, such as by transmitting the common automaticlevel control parameter 714 to the next successive microphone device fortransfer by each successive microphone device until all microphonedevices have received the common automatic level control parameter. Theinitial microphone device 702 (or another microphone device, e.g., thelast device 710) additionally may transmit the common automatic levelcontrol parameter to the master/host device, e.g., over the same datapath used by the microphone devices to exchange data 716 or over aseparate path 718 (where the dashed lines for paths 716 and 718 indicatethat various embodiments may include one, the other, both, or neitherpath). Each microphone device then applies the common automatic levelcontrol parameter to the automatic level controller of the microphonedevice. The master/host device may use the common automatic levelcontrol parameter to process data received from the microphone devices.

Thus, in the example described above with reference to FIG. 7, thedetermination and distribution of the common automatic level controlparameter essentially involves two stages, i.e., a first stage in whichinformation for determining the common automatic level control parameteris exchanged and a second stage in which the common automatic levelcontrol parameter is determined and distributed.

In various alternative embodiments, the information transmitted by onemicrophone device to another may include raw data (e.g., an audiosample) or processed data (e.g., a maximum or minimum peak/RMS valuecalculated from the audio sample and/or any received information). Forexample, the information transmitted from one microphone device toanother may include raw audio sample data, a peak or RMS value computedfrom an audio sample, a gain value, a maximum signal level for aparticular audio sampling frame, a minimum signal level for a particularaudio sampling frame, or other information related to a common automaticlevel control parameter as may be used in a particular implementation.

In one exemplary embodiment, for example, when the common automaticlevel control parameter is a maximum peak or RMS value, the initialmicrophone device transmits its raw audio sample data to the nextsuccessive microphone device, and each successive microphone devicereceives raw audio sample data from its predecessor, compares determinesthe peak or RMS value for the received raw audio data sample and alsofor its own sample, and transmits the audio sample data having thegreater peak or RMS value (i.e., it transmits either the received audiosample data or its own audio sample data, whichever has the higher peakor RMS value). When the initial microphone device receives the raw audiosample data from the last microphone device, it compares the receivedraw audio sample data with its own audio sample to determine the maximumpeak or RMS value across all of the microphone devices. If the initialmicrophone device had the maximum peak or RMS value, then the initialmicrophone device may receive the same value that it transmitted;otherwise, the initial microphone device may receive a different valuethan in transmitted. In any case, once the initial microphone devicedetermines the maximum peak or RMS value across all of the microphonedevices, the initial microphone device can then transmit the audiosample having the maximum peak or RMS value (or alternatively transmitthe maximum peak or RMS value) to the other microphone devices for useby each microphone device in implementing its ALC function.

FIG. 8 is a simplified logic flow diagram for a two-stage process fordetermining and distributing a common automatic level control parameterbased on exchange of raw audio data samples, in accordance with oneexemplary embodiment.

During the first stage (i.e., State 1—810), each microphone device takesan audio sample (811), typically synchronized to a common referenceclock. Each microphone device also receives Information (812) from itspredecessor device in the normal course. If the device is the initialdevice (813), then the information to be transmitted by the device isthe raw audio sample data (814). Otherwise (815), the microphone devicedetermines if the received Information or the Sample has a higher peakor RMS value (816), where the information to be transmitted by thedevice is the one having the higher peak or RMS value (817). Themicrophone device transmits its information to the next successivedevice (818) and transitions to State 2 (819).

During the second stage (i.e., State 2—820), each device receivesInformation from its predecessor device (821). If the device is theinitial device (822), then the received Information is updatedinformation from the last microphone device, in which case the devicedetermines the common automatic level control parameter based on thereceived Information and the devices audio sample data (823), and theinformation to be transmitted by the device is the common automaticlevel control parameter (824). Otherwise (825), the received informationis the common automatic level control parameter passed from itspredecessor device, in which case the information to be transmitted bythe device is the received Information (826), i.e., the device simplypasses along the value it received. The device transmits the commonautomatic level control parameter to the next successive device (827),optionally may apply the common automatic level control parameter to theautomatic level controller (828), and transitions to State 1 (829).

In another exemplary embodiment, for example, when the common automaticlevel control parameter is a maximum peak or RMS value, the initialmicrophone device determines a peak or RMS value for its audio sampleand transmits the value to the next successive microphone device. Eachsuccessive microphone device receives a peak or RMS value from itspredecessor, determines a peak or RMS value for its own audio sample,compares the received peak or RMS value to its own peak or RMS value,and transmits the higher value (i.e., it transmits either the receivedvalue or its own value, whichever is higher). When the initialmicrophone device receives the value from the last microphone device, itcompares the received value with its own value to determine the maximumpeak or RMS value across all of the microphone devices. If the initialmicrophone device had the maximum peak or RMS value, then the initialmicrophone device may receive the same value that it transmitted;otherwise, the initial microphone device may receive a different valuethan in transmitted. In any case, once the initial microphone devicedetermines the maximum peak or RMS value across all of the microphonedevices, the initial microphone device can then transmit the maximumpeak or RMS value to the other microphone devices for use by eachmicrophone device in implementing its ALC function.

FIG. 9 is a simplified logic flow diagram for a two-stage process fordetermining and distributing a common automatic level control parameterbased on exchange of peak or RMS values, in accordance with oneexemplary embodiment.

During the first stage (i.e., State 1—910), each microphone device takesan audio sample (911), typically synchronized to a common referenceclock. Each microphone device also receives Information (912) from itspredecessor device in the normal course. If the device is the initialdevice (913), then the device determines initial information based onthe Sample (914), e.g., a peak or RMS value for the Sample, and theinformation to be transmitted by the device is the that initialinformation (915). Otherwise (916), the microphone device determinesupdated information based on the received Information and the Sample(917), e.g., the higher peak or RMS value, and the information to betransmitted by the device is the updated information (918). Themicrophone device transmits its information to the next successivedevice (919) and transitions to State 2 (920).

During the second stage (i.e., State 2—930), each device receivesInformation from its predecessor device (931). If the device is theinitial device (932), then the received Information is updatedinformation from the last microphone device, in which case the devicedetermines the common automatic level control parameter based on thereceived Information and the device's audio sample data (933), e.g., themaximum peak or RMS value across the devices, and the information to betransmitted by the device is the common automatic level controlparameter (934). Otherwise (935), the received information is the commonautomatic level control parameter passed from its predecessor device, inwhich case the information to be transmitted by the device is thereceived Information (936), i.e., the device simply passes along thevalue it received. The device transmits the common automatic levelcontrol parameter to the next successive device (937), optionally mayapply the common automatic level control parameter to the automaticlevel controller (938), and transitions to State 1 (939).

While the examples described with reference to FIGS. 8 and 9 relate to amaximum peak or RMS value, it should be noted that alternativeembodiments similarly may determine and distribute other values, such asa minimum peak or RMS value, an average value across the microphonedevices, a gain value to be used by all microphone devices, or othervalue.

Exemplary Communication Systems

It should be noted that information related to a common automatic levelcontrol parameter may be distributed to the various microphone devicesusing any of a variety of communication systems that allow data to beprovided to, or exchanged among, the microphone devices.

FIGS. 11-13 are schematic block diagrams showing some of varioustime-division multiplex (TDM) daisy-chain configurations in whichdistributed automatic level control may be used. These daisy-chainconfigurations are described in the United States patent applicationentitled ADVANCED TDM DAISY-CHAIN COMMUNICATION SYSTEMS AND DEVICESfiled on even date herewith, which also described various alternativeTDM daisy-chain configurations in which distributed automatic levelcontrol may be used.

In the TDM daisy-chain configuration shown in FIG. 11, raw audio sampledata may be transmitted by the slave (microphone) devices to the masterdevice (e.g., over the data/command lines), which may compute a commonautomatic level control parameter and distribute the common automaticlevel control parameter to the microphone devices for use by theautomatic level controller in each microphone device to generateprocessed TDM data that may be transmitted to the master device via theSD data line.

In the TDM daisy-chain configuration shown in FIG. 12, the slave(microphone) devices may send information to one another via the WS path(e.g., Slave 1 may transmit information to Slave 2 over the WSO1 line,Slave 2 may transmit information to Slave 2 over the WSO2 line, etc.,and Slave K may transmit information back to Slave 1 via the feedbackpath.

In the TDM daisy-chain configuration shown in FIG. 13, the slave(microphone) devices may send information to one another via the WS path(e.g., Slave 1 may transmit information to Slave 2 over the WSO1 line,Slave 2 may transmit information to Slave 2 over the WSO2 line, etc.,and the last microphone device (Slave K) may transmit information backto Slave 1 and/or Slave 2 via the feedback path.

FIG. 10 is a schematic block diagram showing an automatic levelcontroller circuit that may be used in each microphone device in certainexemplary embodiments. Here, a peak or RMS calculation 1008 is made foran ALC input 1002 (e.g., audio sample data). This peak or RMScalculation 1008 may be compared to a maximum peak or RMS value receivedfrom the previous device (e.g., via WSI 1016 and the advanced TDMinterface 1014) by comparator 1010, with the larger value used for again calculation in block 1012 and/or transmitted to the next successivedevice via the advanced TDM interface 1014 (e.g., via WSO 1018). Thegain calculations from block 1012 can be combined with the ALC input1002 to produce an ALC output 1006 and/or may be used to generate datato be transmitted by the advanced TDM interface 1014, e.g., via the SDline 1020.

FIG. 14 is a schematic diagram of a two-wire bi-directionalpoint-to-point bus configuration as described in U.S. patent applicationSer. No. 13/646,397. An exemplary bi-directional point-to-point busembodiment is now described. Here, each pair of adjacent devices (e.g.,the master M and the first slave S1, the first slave S1 and the secondslave S2, etc.) is connected by a two-wire bus segment, e.g., unshieldedtwisted pair (UTP) wiring with appropriate connectors. Communicationsbetween adjacent devices over the corresponding two-wire bus segment isessentially half-duplex, e.g., the first slave device does not transmitwhile the master device is transmitting to it, and vice versa. In orderto allow for communications between the master and any given slave, andbetween slave devices on a peer-to-peer basis, intermediate slavedevices essentially relay information. Communications over the variousbus segments are essentially independent of one another, and each slavedevice can selectively pass along the information it receives (e.g.,similar to a repeater), remove information before passing alonginformation (e.g., strip information intended for the particular slavedevice), and/or add information (e.g., insert data into a time slotdesignated for the particular slave device). In this way, informationrelated to a common automatic level control parameter can be transmittedfrom device-to-device for a distributed ALC function. For example, rawaudio sample data may be transmitted by the slave devices to the masterdevice, which may determine the common automatic level control parameterand distributed the common automatic level control parameter to theslave devices for use by the automatic level controller in each slavedevice to generate processed TDM data that may be transmitted to themaster device. Alternatively, one of the slave devices (e.g., the lastslave device) may receive raw audio sample data or other informationfrom the upstream devices, determine the common automatic level controlparameter, and transmit the common automatic level control parameter tothe other slave devices for use by the automatic level controller ineach microphone device to generate processed TDM data that may betransmitted to the master device.

Of course, information related to a common automatic level controlparameter may be distributed to the various microphone devices usingother types of communication systems. As but one further example, in acommunication system in which the devices share a common bi-directionalbus or otherwise can receive data from all other devices (eitherserially or in parallel), each may receive raw data sample data from allof the other devices and may determine therefrom the common automaticlevel control parameter, such as, for example, the maximum peak or RMSvalue or average for all of the audio samples.

Exemplary Frame-Based Processing

In certain exemplary embodiments, a common automatic level controlparameter such as a maximum or minimum peak or RMS value, an averagevalue, a gain value, or other value is produced for each audio samplingframe based on audio samples from the microphone devices in that frameor in a prior frame, and each microphone device applies the commonautomatic level control parameter to its automatic level controller.Thus, for example, in each frame, the microphone devices may exchangeinformation for the common automatic level control parameter for thecurrent frame and also exchange the common automatic level controlparameter for the previous frame.

In one exemplary embodiment depicted schematically in FIG. 15, in orderfor each microphone device to produce the common automatic level controlparameter, an initial microphone device 1502 transmits a data packet1504 including initial information for the current frame X based on itsown audio sample data (i.e., “Information(X)”) along with the commonautomatic level control parameter for the prior frame (X−1) (i.e.,“Common(X−1)”) to a next successive microphone device 1506. Eachsuccessive microphone device receives information from the predecessormicrophone device, determines updated information based on the receivedinformation and its own audio sample data (e.g., raw sample data havingthe greater peak or RMS value, or the higher peak or RMS value), andtransmits the updated information (i.e., “Updated(X)”) along with thereceived common automatic level control parameter (i.e., “Common(X−1)”)to the next successive device (where the updated information may be thesame as the received information or may be different than the receivedinformation depending on any of a variety of factors). When the initialmicrophone device 1502 receives updated information 1512 from the lastmicrophone device 1510, it then can produce a common automatic levelcontrol parameter for frame X and distribute it to the other microphonedevices, such as by transmitting it to the next successive microphonedevice along with initial information for the next frame (i.e., frame(X+1)) such that the common automatic level control parameter for frameX is distributed to all microphone devices. In each frame, eachmicrophone device applies a common automatic level control parameter tothe automatic level controller of the microphone device, for exampleapplying the common automatic level control parameter from frame (X−1)to audio sample data from frame (X−1), to audio sample data from frameX, or otherwise. The initial microphone device 1502 (or anothermicrophone device, e.g., the last microphone device 1510) additionallymay transmit the common automatic level control parameter to themaster/host device, e.g., over the same data path used by the microphonedevices to exchange data 1514 or over a separate path 1516 (where thedashed lines for paths 1514 and 1516 indicate that various embodimentsmay include one, the other, both, or neither path). The master/hostdevice may use the common automatic level control parameter to processdata received from the microphone devices.

FIG. 16 is a simplified logic flow diagram for a recursive process fordetermining and distributing a common automatic level control parameter,in accordance with one exemplary embodiment. For a frame X, eachmicrophone device takes an audio sample for frame X (1601), typicallysynchronized to a common reference clock. Each microphone device alsoreceives Information and a Common value (1602) from its predecessordevice in the normal course. If the device is the initial device (1603),then received Information is the updated information from the lastdevice relating to frame (X−1), in which case the device determines thecommon automatic level control parameter for frame (X−1) based on thereceived Information and the device's audio sample data from frame (X−1)(1604) and therefore determines the common value to transmit (1605),e.g., the maximum peak or RMS value across the devices, and determinesinitial information for frame X based on the device's audio sample datafor frame X (1606) and therefore determines information to transmit(1607). Otherwise (1608), the device determines updated information forframe X based on the received Information and the device's audio sampledata for frame X (1609), e.g., the raw sample data having the higherpeak or RMS value, or the higher peak or RMS value itself, and thereforedetermines the information to be transmitted (1610); in this case, thecommon value to be transmitted is the received Common value (1611). Thedevice transmits the Information and Common values to the nextsuccessive device (1612) and optionally may apply the common automaticlevel control parameter for frame (X−1) to the automatic levelcontroller (1613).

FIG. 17 is a schematic timing diagram for determining and distributingcommon automatic level control parameters for frames that may be usedfor microphone devices in a daisy-chain configuration of the type shownin FIG. 12, in accordance with but one exemplary embodiment. Thisexample is based on eight microphone devices, where device 1 effectivelyis the initial device, as indicated by the boxes drawn around“WSO1/WSI2,” which is the WS output of device 1 and the consequently theWS input of device 2. For each frame, all of the microphone devices arecaused to take an audio sample, as indicated in the top line marked“sample.” In certain exemplary embodiments, the audio sampling may besynchronized. Thus, for example, all of the microphones may take anaudio sample for frame X at time slot 1702. For frame X, device 1determines the common automatic level control parameter for frame (X−1)based on the updated information it receives from device 8 (i.e., D8)for frame (X−1) in data packet 1704 and transmits a data packet 1706including the common automatic level control parameter for frame (X−1)as well as initial information for frame X via its WSO1 pin. Device 1can use the common automatic level control parameter for frame (X−1) inits automatic level controller to generate TDM data (i.e., SD1).Different implementations may apply the common automatic level controlparameter differently (in this example, the parameter is used togenerate TDM data for frame (X−1), although other implementations mayuse the parameter to generate TDM data for frame X or for some otherframe), and different implementations may have different timingrelationships between the taking of audio samples, the transmission ofinformation via the WS lines, the transmission of TDM data, and otheroperations. Each successive device from device 2 through device 8receives data from its predecessor device via its WSI pin, generatesupdated data for frame X, and transmits the common value for frame (X−1)that it received via its WSI pin followed by updated data for frame X.Thus, for example, device 2 receives the data packet 1706 from device 1via its WSI pin, generates updated data for frame X, and transmits datapacket 1708 including the common value for frame (X−1) that it receivedvia its WSI pin followed by updated data for frame X (i.e., “D2 UpdatedX”). Similarly, device 8 receives the data packet 1710 from device 7 viaits WSI pin, generates updated data for frame X, and transmits datapacket 1712 including the common value for frame (X−1) that it receivedvia its WSI pin followed by updated data for frame X (i.e., “D8 UpdatedX”). When device 1 receives the data packet 1712 from device 8, itgenerates the common automatic level control parameter for frame X andtransmits data frame 1714 on its WSO pin including the common automaticlevel control parameter for frame X (i.e., “D1 Common X”) along withinitial data for frame (X+1) derived from a new data sample taken forframe (X+1) to start a new cycle for the next frame.

It should be noted that the common automatic level control parameter maybe transmitted to the master/host device, as discussed above. In theexample described with reference to FIG. 17 (which is based on adaisy-chain configuration of the type shown in FIG. 12), when device 1determines the common automatic level control parameter for a frame(e.g., “Common (X−1)” that is transmitted in data packet 1706), device 1may transmit the common automatic level control parameter to themaster/host device, e.g., over the separate command/data lines shown inFIG. 12. Alternatively, in certain embodiments, when device 8 transmitsa data packet on its WSO pin (e.g., data packet 1712 containing “Common(X−1)”), the data packet may be received by the master/host via its WSpin, e.g., by switching the WS pin to an input.

FIGS. 18 and 19 are schematic block diagrams showing relevant logicblocks of microphone devices providing one possible implementation forthe timing diagram of FIG. 17. Specifically, FIG. 18 is a schematicblock diagram for the initial device in the daisy-chain configuration,and FIG. 19 is a schematic block diagram for each of the remainingdevices in the daisy-chain configuration. In this example, the devicestransmit raw audio sample data. The block diagrams represent operationfor a particular frame X.

With reference to FIG. 18, the initial device receives from the lastdevice (device 8 in this example) via its WSI pin 1802 a data packet1804 including the common value from frame (X−2) and an updated valuefor frame (X−1). The device uses the received updated value for frame(X−1) and optionally a sample from frame (X−1) 1806 to determine thecommon automatic level control parameter 1808 for frame (X−1), whichthen may be applied by distributed automatic level controller 1812 toperform the distributed ALC function. The distributed automatic levelcontroller 1812 may apply the common ALC parameter to the sample fromframe (X−1) 1806, the sample from frame X 1810, or other data to produceprocessed data 1814, which then may be transmitted over a communicationsystem 1818. The device transmits on its WSO line 1820 a packet 1822including the common ALC value from block 1808 and the raw audio sampledata from block 1810.

With reference to FIG. 19, the device receives from the predecessordevice via its WSI pin 1902 a data packet 1904 including the commonvalue for frame (X−1) and the initial or updated value for frame X. Thereceived common value for frame (X−1) may be applied by distributedautomatic level controller 1912 to perform the distributed ALC function.The distributed automatic level controller 1912 may apply the common ALCparameter to a sample from frame (X−1) 1906, the sample from frame X1910, or other data to produce processed data 1914, which then may betransmitted over a communication system 1918. The initial/updated valuefor frame X received in data packet 1904 and the sample for frame X 1910are used to determine an updated value 1908. The device transmits on itsWSO line 1920 a data packet 1922 including the common ALC parameter forframe (X−1) received in packet 1904 and the updated value from block1908.

It should be noted that frame-based processing may be implementeddifferently in different systems, for example, based on the way in whichthe devices are interconnected, the protocols used for exchanginginformation to or between devices, etc.

Also, any of a variety of timing relationships may be used in variousalternative embodiments. For example, a common automatic level controlparameter computed for a frame X may be used to for distributedautomatic level control for data samples taken in frame X, in an earlierframe, or in a later frame.

As but one further example, with reference again to FIG. 17, when theinitial device receives the common value for frame (X−2) from device 8,the common (X−2) value may be used by all of the devices to produce thecommon automatic level control parameter (since, at that time, alldevices will have received the value for frame (X−2)), while the commonvalue for frame (X−1) is distributed to the other devices.

FIG. 20 is a schematic timing diagram for determining and distributingcommon automatic level control parameters for frames that may be usedfor microphone devices in a daisy-chain configuration of the type shownin FIG. 12, in accordance with another exemplary embodiment. Thisexemplary embodiment is similar to the one described above withreference to FIG. 17, but in this example, the last device (i.e., device8) is the initial device. Thus, for frame X, device 8 transmits a datapacket 1804 including the common automatic level control parameter forframe (X−1) as well as the initial value for frame X derived from asample taken for frame X in time slot 1802. Both the master/host deviceand device 1 receive the data packet 1804 via the WSO8 feedback path andthus both the master/host and device 1 receive the common automaticlevel control parameter for frame (X−1). Upon receiving the data packet1804 from device 8 via its WSI pin, device 1 generates updated data forframe X, and transmits data packet 1806 including the common value forframe (X−1) that it received via its WSI pin followed by updated datafor frame X (i.e., “D1 Updated X”). Similarly, device 2 receives thedata packet 1806 from device 1 via its WSI pin, generates updated datafor frame X, and transmits data packet 1808 including the common valuefor frame (X−1) that it received via its WSI pin followed by updateddata for frame X (i.e., “D2 Updated X”). When device 8 receives the datapacket 1810 from device 7, device 8 computes the common automatic levelparameter for frame X and transmits a data packet 1812 via the WSO8 pinincluding the common automatic level parameter for frame X and theinitial value for frame (X+1) to start a new cycle for the next frame.Unlike the embodiment described with reference to FIG. 17, thisembodiment described with reference to FIG. 20 allows the master/hostdevice to receive the common automatic level control parameter for agiven frame prior to its distribution and use by the microphone devices,without requiring device 1 to forward the value to the master/hostdevice over separate command/data lines or otherwise.

Miscellaneous

It should be noted that the term “data packet” is used above toreference certain units of data transmitted between devices. The use ofthis term is for convenience and does not limit embodiments of thepresent invention to any particular data format or communicationprotocol.

It will be understood by any person of ordinary skill in the art that itwould be virtually impossible to describe herein every possible mannerof implementing a distributed automatic level control function, and, inparticular, every possible type of device that can support a distributedALC function, every type of distributed ALC circuit, every type ofcommunication system that can support a distributed ALC function, everypossible way of exchanging information with and between devices, everypossible type of information that can be exchanged with or betweendevices, etc. Various exemplary embodiments are described above, andfrom these exemplary embodiment, various alternatives will beunderstood.

It should be noted that headings are used above for convenience and arenot to be construed as limiting the present invention in any way.

Various aspects of the present invention may be embodied in manydifferent forms, including, but in no way limited to, computer programlogic for use with a processor (e.g., a microprocessor, microcontroller,digital signal processor, or general purpose computer), programmablelogic for use with a programmable logic device (e.g., a FieldProgrammable Gate Array (FPGA) or other PLD), discrete components,integrated circuitry (e.g., an Application Specific Integrated Circuit(ASIC)), or any other means including any combination thereof. Computerprogram logic implementing some or all of the described functionality istypically implemented as a set of computer program instructions that isconverted into a computer executable form, stored as such in a computerreadable medium, and executed by a microprocessor under the control ofan operating system. Hardware-based logic implementing some or all ofthe described functionality may be implemented using one or moreappropriately configured FPGAs.

Computer program logic implementing all or part of the functionalitypreviously described herein may be embodied in various forms, including,but in no way limited to, a source code form, a computer executableform, and various intermediate forms (e.g., forms generated by anassembler, compiler, linker, or locator). Source code may include aseries of computer program instructions implemented in any of variousprogramming languages (e.g., an object code, an assembly language, or ahigh-level language such as Fortran, C, C++, JAVA, or HTML) for use withvarious operating systems or operating environments. The source code maydefine and use various data structures and communication messages. Thesource code may be in a computer executable form (e.g., via aninterpreter), or the source code may be converted (e.g., via atranslator, assembler, or compiler) into a computer executable form.

The computer program may be fixed in any form (e.g., source code form,computer executable form, or an intermediate form) either permanently ortransitorily in a tangible storage medium, such as a semiconductormemory device (e.g., a RAM, ROM, PROM, EEPROM, or Flash-ProgrammableRAM), a magnetic memory device (e.g., a diskette or fixed disk), anoptical memory device (e.g., a CD-ROM), a PC card (e.g., PCMCIA card),or other memory device. The computer program may be fixed in any form ina signal that is transmittable to a computer using any of variouscommunication technologies, including, but in no way limited to, analogtechnologies, digital technologies, optical technologies, wirelesstechnologies (e.g., Bluetooth), networking technologies, andinternetworking technologies. The computer program may be distributed inany form as a removable storage medium with accompanying printed orelectronic documentation (e.g., shrink wrapped software), preloaded witha computer system (e.g., on system ROM or fixed disk), or distributedfrom a server or electronic bulletin board over the communication system(e.g., the Internet or World Wide Web).

Hardware logic (including programmable logic for use with a programmablelogic device) implementing all or part of the functionality previouslydescribed herein may be designed using traditional manual methods, ormay be designed, captured, simulated, or documented electronically usingvarious tools, such as Computer Aided Design (CAD), a hardwaredescription language (e.g., VHDL or AHDL), or a PLD programming language(e.g., PALASM, ABEL, or CUPL).

Programmable logic may be fixed either permanently or transitorily in atangible storage medium, such as a semiconductor memory device (e.g., aRAM, ROM, PROM, EEPROM, or Flash-Programmable RAM), a magnetic memorydevice (e.g., a diskette or fixed disk), an optical memory device (e.g.,a CD-ROM), or other memory device. The programmable logic may be fixedin a signal that is transmittable to a computer using any of variouscommunication technologies, including, but in no way limited to, analogtechnologies, digital technologies, optical technologies, wirelesstechnologies (e.g., Bluetooth), networking technologies, andinternetworking technologies. The programmable logic may be distributedas a removable storage medium with accompanying printed or electronicdocumentation (e.g., shrink wrapped software), preloaded with a computersystem (e.g., on system ROM or fixed disk), or distributed from a serveror electronic bulletin board over the communication system (e.g., theInternet or World Wide Web). Of course, some embodiments of theinvention may be implemented as a combination of both software (e.g., acomputer program product) and hardware. Still other embodiments of theinvention are implemented as entirely hardware, or entirely software.

The present invention may be embodied in other specific forms withoutdeparting from the true scope of the invention. Any references to the“invention” are intended to refer to exemplary embodiments of theinvention and should not be construed to refer to all embodiments of theinvention unless the context otherwise requires. The describedembodiments are to be considered in all respects only as illustrativeand not restrictive.

What is claimed is:
 1. A method of automatic level control in a systemhaving a plurality of microphone devices, the method comprising: each ofthe plurality of microphone devices transmitting, to an adjacentmicrophone device, information relating to a common automatic levelcontrol parameter, the automatic level control parameter indicative ofcharacteristics of the plurality of microphone devices, the plurality ofmicrophone devices being arranged in a daisy-chain configuration,wherein the information is derived from an audio sample of at least onedifferent microphone device of the plurality of microphone device, eachof the plurality of microphone devices including a distributed automaticlevel controller and, receiving information from a previous microphonedevice, and producing, by each of the plurality of microphone devicesindependently of a remaining plurality of microphone devices, the commonautomatic level control parameter based on the information received bythe previous microphone device; and applying, by each of the pluralityof microphone devices, the common automatic level control parameter tothe distributed automatic level controller of the microphone device. 2.The method according to claim 1, wherein transmitting informationrelating to the common automatic level control parameter comprises: in afirst phase, transmitting an initial value by an initial device to anext successive device and transmit, by each successive device, anupdated value based on a value received from a predecessor device; andin a second phase, transmitting the common automatic level controlparameter by the initial device to the next successive device andtransmitting the common automatic level control value by each successivedevice.
 3. The method according to claim 1, wherein producing the commonautomatic level control parameter based on the information received bythe microphone device comprises: producing the common automatic levelcontrol parameter based on the information received by the microphonedevice and at least one audio sample of the microphone device.
 4. Themethod according to claim 1, wherein the succession of audio samples islogically divided into a number of successive frames, and wherein all ofsaid plurality of microphone devices apply the common automatic levelcontrol parameter to a respective audio sample associated with a commonframe.
 5. The method according to claim 4, wherein the common automaticlevel control parameter is derived from audio samples associated withone of the common frame or a frame earlier than the common frame.
 6. Themethod according to claim 1, wherein at least one of the plurality ofmicrophone devices transmits information relating to the commonautomatic level control parameter to a next successive microphone devicein the daisy-chain configuration.
 7. The method according to claim 1,wherein the common automatic level control parameter comprises a valuecomputed from at least one audio sample from each of the plurality ofmicrophone devices.
 8. The method according to claim 1, wherein applyingthe common automatic level control parameter to the distributedautomatic level controller of the plurality of microphone devicescomprises at least one of: using the common automatic level controlparameter as a reference value in the distributed automatic levelcontroller; programming a programmable gain amplifier based on thecommon automatic level control parameter; or processing audio sampledata of the plurality of microphone devices based on the commonautomatic level control parameter to produce processed audio sample dataand transmitting the processed audio sample data over a communicationsystem.
 9. The method according to claim 1, further comprising:transmitting information relating to the common automatic level controlparameter to a master/host device, wherein the master/host device isconfigured to process data from the plurality of microphone devicesbased on the common automatic level control parameter.
 10. The methodaccording to claim 1, wherein the automatic level control parameter is amaximum or minimum peak, RMS value, an average signal level value, or again value.
 11. A system for automatic level control processing, thesystem comprising a plurality of microphone devices arranged in adaisy-chain configuration, each microphone device having a communicationinterface and a distributed automatic level controller and producing asuccession of audio samples, wherein the distributed automatic levelcontroller of each of the plurality of microphone devices is configuredto receive, via the communication interface, information relating to acommon automatic level control parameter derived from an audio sample ofat least one different microphone device of the plurality of microphonedevices, produce, independently of a remaining of the plurality ofmicrophone devices, the common automatic level control parameter basedon the received information, and apply the common automatic levelcontrol parameter for an automatic level control function of theplurality of microphone devices.
 12. The system according to claim 11,wherein: in a first phase, an initial value is transmitted by an initialmicrophone device of the plurality of microphone devices to a nextsuccessive microphone device and each successive microphone devicetransmits an updated value based on a received value; and in a secondphase, the common automatic level control parameter is transmitted bythe initial microphone device to the next successive microphone deviceand each successive device transmits the common automatic level controlvalue.
 13. The system according to claim 11, wherein each microphonedevice produces the common automatic level control parameter based onthe information received by the microphone device and at least one audiosample of the microphone device.
 14. The system according to claim 11,wherein the succession of audio samples is logically divided into anumber of successive frames, and wherein all of said plurality ofmicrophone devices apply the common automatic level control parameter toa respective audio sample associated with a common frame.
 15. The systemaccording to claim 14, wherein the common automatic level controlparameter is derived from audio samples associated with one of thecommon frame or a frame earlier than the common frame.
 16. The systemaccording to claim 11, wherein at least one microphone device of theplurality of microphone devices transmits information relating to thecommon automatic level control parameter to a next successive microphonedevice in the daisy-chain configuration.
 17. The system according toclaim 11, wherein the common automatic level control parameter comprisesa value computed from at least one audio sample from each of theplurality of microphone devices.
 18. The system according to claim 11,wherein applying the common automatic level control parameter comprisesat least one of: using the common automatic level control parameter as areference value in the distributed automatic level controller;programming a programmable gain amplifier based on the common automaticlevel control parameter; or processing audio sample data of theplurality of microphone devices based on the common automatic levelcontrol parameter to produce processed audio sample data andtransmitting the processed audio sample data over a communicationsystem.
 19. The system according to claim 11, further comprising amaster/host device in communication with the plurality of microphonedevices, wherein the master/host device is configured to receiveinformation relating to the common automatic level control parameterfrom at least one of the plurality of microphone devices, and whereinthe master/host device is configured to process data from the pluralityof microphone devices based on the common automatic level controlparameter.
 20. A microphone device of a plurality of microphone devicescomprising: a microphone for producing a succession of audio samples; acommunication interface; and a distributed automatic level controller,wherein the distributed automatic level controller is configured toreceive, via the communication interface information relating to acommon automatic level control parameter derived from an audio sample ofat least one different microphone device of the plurality of microphonedevices, produce the common automatic level control parameter based onthe received information, and apply the common automatic level controlparameter to the distributed automatic level controller, wherein each ofthe plurality of microphone devices includes a distributed automaticlevel controller and the plurality of the microphone devices arearranged in a daisy-chain configuration.
 21. The microphone deviceaccording to claim 20, wherein the microphone device produces the commonautomatic level control parameter based on the information received bythe device and at least one audio sample of the plurality of microphonedevice.
 22. The microphone device according to claim 20, wherein: thesuccession of audio samples is logically divided into a number ofsuccessive frames; the common automatic level control parameter isderived from information associated with a first given frame; and thecommon automatic level control parameter is applied to one of the firstgiven frame or another frame.
 23. The microphone device according toclaim 20, wherein applying the common automatic level control parametercomprises at least one of: using the common automatic level controlparameter as a reference value in the automatic level controller;programming a programmable gain amplifier based on the common automaticlevel control parameter; or processing audio sample data of themicrophone device based on the common automatic level control parameterto produce processed audio sample data and transmitting the processedaudio sample data over a communication system.